Method for correcting the determination of the rotating position of a drive shaft of a commutated direct current motor

ABSTRACT

A method for determining the rotational position of a motor drive shaft includes counting detected ripples contained in a motor current signal as the shaft is driven. Whether a ripple expected to be contained in the current signal at a probable time is absent from within a tolerance band containing the probable time of the expected current ripple is determined. If the expected ripple is absent from within the tolerance band containing the probable time, then whether a ripple is detected after the tolerance band of the expected ripple is determined. If a ripple is detected after the tolerance band and the expected ripple is absent from within the tolerance band, then the expected ripple is counted as a detected ripple. The determined rotational position of the shaft is based on the counted ripples. The length of the tolerance band dynamically changes as a function of a motor operating state.

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This is a continuation of International ApplicationPCT/EP02/05280,published in German, with an international filing date ofMay 14, 2002, which claims priority to DE 101 24 615.3 filed on May 21,2001.

BACKGROUND OF THE INVENTION

[0002] 1. Field of the Invention

[0003] The present invention relates to a method for correcting arotational position determination of the drive shaft of a commutateddirect current (DC) motor by evaluating the current ripple contained inthe armature current signal when missed ripples occur if no furthercurrent ripple is identified within a tolerance band surrounding adefined time point after the last detected current ripple.

[0004] 2. Background Art

[0005] The armature current signal of a commuted direct current (DC)motor includes a direct component and a ripple component superimposed onthe direct component. The ripple component arises when the DC motoroperates as a consequence of the interaction of the magnet (field), thearmature winding, and the commutator of the DC motor. This expressesitself in a short-term change in the induced voltage which produces theripple component of the armature signal. The current peaks contained inthe armature current signal—referred to below as current ripple—occurwhen the armature rotates. The current ripple has a frequencycorresponding to the number of collector bars. For example, if thearmature has ten collector bars then the armature current signal has tenidentifiable current ripples.

[0006] Thus, the number of counted current ripples is indicative of therotational position of the armature of the DC motor and is thusindicative of the position of the element (such as a window) beingdriven by the DC motor within a predetermined travel segment. The analogarmature current signal is digitized to make it possible to count thecurrent ripples.

[0007] However, during the operation of a DC motor, especially underload, it can happen that a current ripple contained in the armaturecurrent signal is distorted and is recognizable by two current peaks.These two current peaks are known as double ripples. When such anarmature current signal is digitized, the distortion causes the currentripple signal to be recorded with two current ripples in this positioninstead of one current ripple. If these double ripples are counted thenthe determined position for the driven element will be erroneous. Thesame goes for the occurrence of a missed ripple. A missed ripple impliesthe absence of a current ripple when the shaft of the DC motor actuallyrotates. These errors are caused by the commutator, and thus are noteasily eliminated by conditioning the armature current signal.

[0008] U.S. Pat. No. 6,144,179 discloses a measure according to whichthe counter result of the counted current ripples is only corrected forthe absence of an expected current ripple if the current ripple is notidentified within a tolerance band surrounding the time point that thecurrent ripple is expected. The tolerance band is fixed. Thus, thedisclosed process involves enlarging the calculated probable time pointof the next commutation (current ripple) by the size of the specifiedtolerance band. The absence of a current ripple at or before theexpected time point is only identified as a missed ripple if a currentripple also has not been detected within the tolerance band.

[0009] This process allows satisfactory ripple detection when the DCmotor is in steady-state or quasi steady-state operation, and thisripple detection also provides corresponding correction of missedripples or double ripples. If a current ripple is detected only later intime than the upper limit of the tolerance band then the system decidesthat there has been an erroneous absence of a current ripple and makes acorresponding correction in the counter result.

[0010] However, during the operation of a DC motor, operating states canoccur in which the period length of a current ripple increases (ordecreases) abruptly. Such an operating state in which the period lengthof a current ripple increases occurs, for example, if there is an abruptincrease in load torque. An abrupt increase in load torque may occur,for example, if the motor is operating against a stop. Because in such asituation the current ripple is detected only after the end of thetolerance band, the system may make a false correction in the counterresult. Consequently, the position determined for the shaft andconsequently, the driven element, will be incorrect. If such eventsrepeat, the counter result becomes increasingly erroneous.

SUMMARY OF THE INVENTION

[0011] Starting from the discussed prior art, the present invention isbased on the task of further developing the method of the type describedabove but to avoid, or to reduce as much as possible, themisinterpretation of missed ripples.

[0012] The present invention solves this task because the toleranceband—which surrounds the time point when the detection of a currentripple is expected and in which a correction of the counter result isunnecessary—has a size that is dynamically adapted to the changingoperating states of the DC motor.

[0013] Unlike the prior art, the method according to the presentinvention does not specify a static or fixed tolerance band. Incontrast, the tolerance band is dynamic and is adaptable to respectiveoperating states of the motor. The tolerance band is adaptable to themotor according to the changing operating states of the motor.

[0014] For example, assume that the motor is in continuous operationwith the tolerance band being adapted to this continuous operation andthe continuous operation does not change or only changes minimally. Whenthe motor starts acting against a stop which interrupts the continuousoperation and causes the load torque to increase abruptly, the toleranceband is adapted to this changing operation state. In this example, thetolerance band is adapted by being enlarged.

[0015] Enlarging the tolerance band means that the current ripple, theperiod of which is prolonged as a consequence of the changed operatingstate, will be present in the enlarged tolerance band. Consequently, thecounter result corresponds to the number of current ripples actuallydetected so that even in a changing operating state such as thatdescribed the determination of the position of the shaft of the motorand the driven element remains exact.

[0016] The tolerance band in which current ripple detection is expectedcan be enlarged or reduced depending on the changing operating states ofthe motor.

[0017] One embodiment of the present invention adapts the tolerance bandas a function of the magnitude of a change in the mean of the digitizedarmature current signal. This involves enlarging the tolerance band whenthe mean increases and reducing the tolerance band when the meandecreases. In this embodiment, the tolerance band is adapted as afunction of the operating states preceding the current time point. Thismay involve subdividing changes in the mean into change intervals sothat the size of the tolerance band is then adapted in steps. Todetermine the mean it is sufficient to consider a certain time intervalpreceding the current time point. The size of the time interval can beselected to be constant to minimize the computing effort or the size canbe designed to adapt to the operating state of the motor.

[0018] Another embodiment of the present invention allows the toleranceband to be adapted as a function of the magnitude of the change in speedof the motor as calculated from the motor current and characteristicdata. The tolerance band is enlarged in the event of a negative changein motor speed. Conversely, the tolerance band is reduced in the eventof a positive change in motor speed.

[0019] The use of this method is especially suitable in operating statesin which the load torque increases abruptly. It is expedient todetermine a negative change in motor speed at a time point bycalculating the motor speed step response curve for an abrupt rise inthe current load torque that is based on the short-circuit torque. Thiscan be used to derive how long the motor speed will still change, i.e.,how long the armature shaft will still turn. If there is an abrupt risein load torque, such as occurs, for example, when the motor is operatingagainst a stop, then the tolerance band is correspondingly enlarged sothat the current ripple whose period is prolonged can also be detectedif it is within the tolerance band.

[0020] The maximum frequency that the calculation cycle can have is oncein every sampling interval in which the armature current signal isdigitized. In principle this is unnecessary. Instead it is sufficientfor a negative change in motor speed to be calculated from the currentoperating state when there is an abrupt rise in load torque once withina current ripple period, and for it to be extrapolated for the othersampling time points within this current ripple period.

[0021] In principle it is possible for different operating states of themotor to use different correction processes and/or for the calculationsto be performed more or less frequently depending on the motor operatingstates or the changing motor operating states. In this connection it isalso possible, for example in the method according to the speed-relatedsample embodiment, for the motor to have a startup phase, in which thecomplete motor model is performed with the necessary motor current andcharacteristic data, followed by an operating phase, in whichcalculating the maximum change in speed when there is an abrupt increasein load torque only involves considering the difference between theactual motor current data and the preceding motor current data. Thisreduces the calculation effort.

BRIEF DESCRIPTION OF THE DRAWINGS

[0022] The present invention is described below using two sampleembodiments which make reference to the attached figures. The figuresare as follows:

[0023]FIGS. 1a-1 d illustrate diagrams showing the adaptation of thetolerance band to avoid misinterpretation of missed current ripples bycalculating the mean of the armature current signal; and

[0024]FIG. 2 illustrates diagrams showing the adaptation of thetolerance band to avoid misinterpretation of missed current ripplesusing a calculated change in motor speed.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT(S)

[0025]FIG. 1a illustrates the behavior of an analog armature current ina graph in which the Y-axis represents the analog armature current andthe X-axis represents time. To determine the behavior of the mean ofthis analog current signal, the analog current signal is first sampledaccording to a specified cycle. The digitized armature current signal isreproduced in FIG. 1b. The next step is to form the mean from thedigitized current signal. This is done at every point by using a certainnumber of preceding values of the digitized current signal. FIG. 1cillustrates the behavior of the mean of the armature current signal.

[0026]FIGS. 1a, 1 b, and 1 c are graphical representations of theoperating state of a commutated direct current (DC) motor when the motoris acting against a stop. For example, if the motor is one that is usedto raise a motor vehicle window, then this operating state occurs whenthe window is closed which occurs when the motor pushes the window intoits frame. The corresponding operating state also occurs in a situationwhen something is caught in the window.

[0027] In such a motor operating state, the armature current signalincreases due to the increased current consumption and this is expressedin the rising behavior of the mean of the armature current signal asshown in FIG. 1c. Thus, a change in the mean of the armature currentsignal reflects changing operating states in the motor, as isnoticeable, in the exemplary described operating state, from the rise inthe mean of the armature current signal.

[0028] Therefore, the behavior of the mean of the armature currentsignal can be used to specify, as a function of the change in the mean,a tolerance band used for avoiding misinterpretation of missed currentripples. In this way, the tolerance band, which is added to the expectedtime point when current ripple detection is expected, can be adapted tochanging operating states to avoid a misinterpretation of undetectedcurrent ripples.

[0029]FIG. 1d illustrates how this tolerance band is increasinglyenlarged in the sample operating state, rising from a value of 25% up toa value of 45%, as a consequence of the change in the operating state.The enlarged tolerance band now makes possible proper current rippledetection with an abruptly changed period, even if the current rippledetection is not detected until later than was initially predicted.

[0030] The method according to the present invention involves making acorrection to the actually captured current ripple result if a currentripple is not detected within the tolerance band adapted to theoperating state. The setting of the adaptive tolerance band takes intoaccount abruptly changing current ripple periods, so non-detection of acurrent ripple within the tolerance band means that a current ripple isactually not identified then, and it is necessary to correct the counterresult.

[0031]FIG. 2 illustrates diagrams corresponding to another sampleembodiment for adapting the tolerance band for current ripple detectionas a function of changing motor operating states. The topmost diagram 20corresponds to that of FIGS. 1a and 1 b of the other embodiment; thedigitally sampled values of the analog armature current signal beingmarked on this curve with small boxes.

[0032] The variable used to adapt the tolerance band in this embodimentis the maximum change in motor speed calculated from the motor currentand characteristic data when there is an abrupt rise in the load torqueacting on the motor, such as can be the case if the motor is a motorvehicle window raising motor and something gets caught in the windowwhen it is closing. Because this calculation uses the current motorcurrent data, a different maximum speed change can be calculated atdifferent time points in the armature current signal.

[0033] For example, the bottom row of illustrations in FIG. 2 show thiscalculation. The current motor current data—which in this case means thevoltage u(t), the current i(t), and the load torque M(t)—is used tocalculate the motor speed change n(t), taking into consideration themotor characteristic data which is referred to as a transfer functionG(s) as represented by block 24. The result represents the calculatedmaximum motor speed change, which is shown as diagram 26 in the bottomrow of FIG. 2.

[0034] The illustration 22 of the load torque M(t), which affects thecalculation, makes it clear that this embodiment's calculation assumesan abrupt rise in the current load torque, which would be set to themaximum short-circuit torque. Of course other load torque-dependentmodels could also enter in here. The shape of the curve of thecalculated maximum speed change is then used to adapt the tolerance bandfor the current ripple detection. If there is a rapid negative change inspeed the tolerance band is correspondingly enlarged.

[0035] The middle set of diagrams 28, 30, and 32 in FIG. 2 shows themotor speed change curves which result when such a calculation isperformed, using the respective minima of the armature current signal asexamples. The curve of the behavior of the tolerance band which isderived from these curves is not shown in FIG. 2. However, the behaviorof the tolerance band essentially corresponds to the behavior of thetolerance band in FIG. 1d.

[0036] This method can involve calculating the maximum motor speedchange at specified time points, as is shown in the sample embodiment inFIG. 2, in which such a calculation is performed at every second minimumas shown by the middle set of diagrams 28, 30, and 32. Depending on whatcalculation power is available, this calculation can also be performedmore frequently during the course of the armature current signal.

[0037] While embodiments of the present invention have been illustratedand described, it is not intended that these embodiments illustrate anddescribe all possible forms of the present invention. Rather, the wordsused in the specification are words of description rather thanlimitation, and it is understood that various changes may be madewithout departing from the spirit and scope of the present invention.

What is claimed is:
 1. A method for determining the rotational positionof the drive shaft of a direct current motor, the method comprising:detecting current ripples contained in an armature current signal of themotor as the drive shaft of the motor rotates in response to beingdriven by the motor; counting the detected current ripples; determiningwhether a current ripple expected to be contained in the armaturecurrent signal at a probable time point is absent from within atolerance time band containing the probable time point of the expectedcurrent ripple; if the expected current ripple is absent from within thetolerance time band containing the probable time point of the expectedcurrent ripple, then determining whether a current ripple is detectedafter the tolerance time band of the expected current ripple; if acurrent ripple is detected after the tolerance time band of the expectedcurrent ripple and the expected current ripple is absent from within thetolerance time band, then counting the expected current ripple as adetected current ripple; determining the rotational position of thedrive shaft based on the counted current ripples; and dynamicallychanging the length of the tolerance time band as a function of anoperating state of the motor as the motor drives the drive shaft.
 2. Themethod of claim 1 wherein: the length of the tolerance time band isdynamically changed as a function of a change in the mean of thearmature current signal, wherein the length of the tolerance time bandis enlarged when the mean of the armature current signal increases andis reduced when the mean of the armature current signal decreases. 3.The method of claim 2 further comprising: determining the mean of thearmature current signal by taking into account a constant time intervalpreceding the probable time point of the expected current ripple.
 4. Themethod of claim 2 further comprising: determining the mean of thearmature current signal by taking into account a time interval precedingthe probable time point of the expected current ripple, wherein thelength of the time interval depends on the operating state of the motor.5. The method of claim 2 wherein: the length of the tolerance band ischanged in steps.
 6. The method of claim 2 further comprising:digitizing the armature current signal; wherein the mean of the armaturecurrent signal is determined from the digitized armature current signal.7. The method of claim 1 wherein: the length of the tolerance time bandis dynamically changed as a function of a change in motor speed, whereinthe length of the tolerance time band is enlarged when the motor speeddecreases and is reduced when the motor speed increases.
 8. The methodof claim 7 further comprising: determining a negative change in motorspeed by calculating a speed step response curve for an abrupt rise inmotor torque based on maximum short-circuit torque to determine themaximum length of the tolerance time band.
 9. The method of claim 7further comprising: digitizing the armature current signal in samplingintervals; wherein the negative change in speed is calculated in everysampling interval in which the armature current signal is digitized. 10.The method of claim 7 further comprising: calculating the negativechange in motor speed once within a period of a current ripple for agiven time point; and extrapolating the negative change in motor speedfor other time points based on the negative change in motor speed forthe given time point.
 11. The method of claim 7 wherein: the motor has astart-up phase in which the change in motor speed is determined usingmotor current and characteristic data, the motor has an operating phaseafter the start-up phase in which the change in motor speed isdetermined from the difference between current motor current data andmotor current data preceding the current motor data.
 12. The method ofclaim 1 wherein: the operating state of the motor includes shut-down andstart-up motor operating states.